const obj = {
  a: 3,
  b: 4,
  c: {
    x: 5,
    y: 6,
  },
  d() {
    console.log(123);
  },
  e: undefined,
};

// 普通赋值
// const newObj = obj;

// 浅拷贝
// const newObj = { ...obj };
// const newObj = Object.assign({}, obj);
// newObj.a = 5;
// console.log(obj);

// 深拷贝
// 1. 递归的浅拷贝
// 2. JSON.parse(JSON.stringify(obj)); 函数和undefined
// const newObj = JSON.parse(JSON.stringify(obj));
// newObj.c.x = 50;
// console.log(obj);
// const newObj = JSON.parse(JSON.stringify(obj));
// console.log(newObj);
// 3. lodash库
